<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<div id="app">
  <cpn></cpn>
  <cpn></cpn>
  <cpn ref="aaa"></cpn>
  <button @click="btnClick">按钮</button>
</div>

<template id="cpn">
  <div>
    <h2>我是子组件的name</h2>
  </div>
</template>
<script src="../js/vue.js"></script>
<script>
  const vm = new Vue({
    el: '#app',
    data: {},
    methods: {
      btnClick() {
        //1.$children的使用 （不推荐用，很少用  除非需要取出全部的）
        // console.log(this.$children) //输出类型为数组类型
        // this.$children[0].showMessage();
        // //如果值有多组  可以通过循坏进行遍历
        // for(let c of this.$children){
        //   console.log(c.name);
        //   c.showMessage()
        // }
        //2.$refs的使用（推荐用，90%以上都是使用这个）=>对象类型，默认是一个空的对象，eg:ref='aaa'
        console.log(this.$refs.aaa.name);
        console.log(this.$refs.aaa.showMessage());
      }
    },
    components: {
      cpn: {
        template: '#cpn',
        data() {
          return {
            name: '金瑞昌'
          }
        },
        methods: {
          showMessage() {
            console.log('我是子组件的值' + ',我的名字是' + this.name);
          }
        }
      }
    }
  })
</script>

</body>
</html>